package br.com.hs.nfe.common.to;

import br.com.hs.nfe.common.anotation.Element;
import br.com.hs.nfe.common.anotation.TypeEnum;
import java.math.BigDecimal;

/**
 * Classe de informação do PIS ST.
 * @author Ranlive Hrysyk
 */
public class PisSTTO extends BaseTO {

    @Element(publicName = "Valor da BC do PIS", type = TypeEnum.DECIMAL, decimalCount = 2, required = false)
    private BigDecimal vBC;
    @Element(publicName = "Alíq. do PIS (em percentual)", type = TypeEnum.DECIMAL, decimalCount = 2, required = false)
    private BigDecimal pPIS;
    @Element(publicName = "Valor do PIS", type = TypeEnum.DECIMAL, decimalCount = 2, required = false)
    private BigDecimal vPIS;
    @Element(publicName = "Qtde. Vendida", type = TypeEnum.DECIMAL, decimalCount = 4, required = false)
    private BigDecimal qBCProd;
    @Element(publicName = "Alíq. do PIS (em reais)", type = TypeEnum.DECIMAL, decimalCount = 4, required = false)
    private BigDecimal vAliqProd;

    /**
     * Valor da BC do PIS.
     */
    public BigDecimal getVBC() {
        return vBC;
    }

    /**
     * Informar o valor da base de cálculo do PIS.
     * @param vBC Valor da BC do PIS
     */
    public void setVBC(BigDecimal vBC) {
        this.vBC = vBC;
    }

    /**
     * Alíquota do PIS (em percentual).
     */
    public BigDecimal getPPIS() {
        return pPIS;
    }

    /**
     * Informar a alíquota do PIS (em percentual).
     * @param pPIS Alíquota do PIS (em percentual)
     */
    public void setPPIS(BigDecimal pPIS) {
        this.pPIS = pPIS;
    }

    /**
     * Valor do PIS.
     */
    public BigDecimal getVPIS() {
        return vPIS;
    }

    /**
     * Informar o valor do PIS.
     * <p>O vPIS retido deve ser informado em vOutro do Produto.</p>
     * @param vPIS Valor do PIS
     */
    public void setVPIS(BigDecimal vPIS) {
        this.vPIS = vPIS;
    }

    /**
     * Quantidade Vendida.
     */
    public BigDecimal getQBCProd() {
        return qBCProd;
    }

    /**
     * Informar a quantidade vendida.
     * @param qBCProd Quantidade Vendida
     */
    public void setQBCProd(BigDecimal qBCProd) {
        this.qBCProd = qBCProd;
    }

    /**
     * Alíquota do PIS (em reais).
     */
    public BigDecimal getVAliqProd() {
        return vAliqProd;
    }

    /**
     * Informar a alíquota do PIS (em reais).
     * @param vAliqProd Alíquota do PIS (em reais)
     */
    public void setVAliqProd(BigDecimal vAliqProd) {
        this.vAliqProd = vAliqProd;
    }
}
